registerTests([
function FirstOrDefault_Test_0()
{
	var myArray = [1, 2, 3];
	var result = myArray.FirstOrDefault();
	
	Assert.areEqual(result, 1);
},
function FirstOrDefault_Test_1()
{
	var myArray = [];
	var result = 9;

	Assert.doesntThrowException(function() { result = myArray.FirstOrDefault(); });
	Assert.isNotDefined(result);
},
function FirstOrDefault_Test_Condition_0()
{
	var myArray = [1, 2, 3];
	var result = myArray.FirstOrDefault("x=> x == 2");
	
	Assert.areEqual(result, 2);
},
function FirstOrDefault_Test_Condition_1()
{
	var myArray = [];
	var result = 9;

	Assert.doesntThrowException(function() { result = myArray.FirstOrDefault("x => x == 2");});
	Assert.isNotDefined(result);
}
]);